package com.aloha.springframework.aop;


/**
 * @author DaiZhiHeng
 * @description 用于封装被代理的对象
 * @date 2023/7/7 9:39
 */
public class TargetSource {

    /**
     * 实际被代理的对象
     */
    private final Object target;

    public TargetSource(Object target) {
        this.target = target;
    }

    /**
     * 用于获取被代理对象的接口类型
     */
    public Class<?>[] getTargetClass() {
        return target.getClass().getInterfaces();
    }

    /**
     * 获取实际的代理对象
     */
    public Object getTarget() {
        return target;
    }

}
